Utilisateur:Ash Crow/PagesCourantes.js
Apparence
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.function CurrentYear(date) {
year = date.getYear();
if (year < 2000)
year = year + 1900;
return year;
}
function TodayDate(date) {
m = new Array("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre");
day = date.getDate();
return (day + "_" + m[date.getMonth()]);
}
Date.prototype.getWeek = function() {
// Source: http://weeknumber.net/how-to/javascript (Public Domain)
// Returns the ISO week of the date.
var date = new Date(this.getTime());
date.setHours(0, 0, 0, 0);
// Thursday in current week decides the year.
date.setDate(date.getDate() + 3 - (date.getDay() + 6) % 7);
// January 4 is always in week 1.
var week1 = new Date(date.getFullYear(), 0, 4);
// Adjust to Thursday in week 1 and count number of weeks from date to week1.
return 1 + Math.round(((date.getTime() - week1.getTime()) / 86400000 - 3 + (week1.getDay() + 6) % 7) / 7);
};
function CurrentWeek(date) {
return date.getWeek();
}
mw.loader.using( ['moment', 'mediawiki.util'], function () {
$( document ).ready( function () {
var now = moment();
now.locale( 'fr' ); // Ne pas dépendre de la langue de l’utilisateur
// Adapt the code depending on the skin
skin = mw.config.get('skin');
switch(skin) {
case 'vector':
p_class = 'portal';
b_class = 'body' ;
break;
case 'timeless':
p_class = 'mw-portlet';
b_class = 'body' ;
break;
default:
p_class = 'portlet generated-sidebar';
b_class = 'pBody' ;
}
var today = new Date();
var today_date = TodayDate(today);
var current_year = CurrentYear(today);
var today_full_date = today_date + '_' + current_year;
var current_week = CurrentWeek(today);
$("#p-navigation").after('<div id="p-pc" class="vector-main-menu-group vector-menu mw-portlet mw-portlet-PC" aria-labelledby="p-pc-label" role="navigation"><div class="vector-menu-heading" id="p-pc-label">Pages courantes</div><div class="vector-menu-content"><ul id="p-pc-content" class="vector-menu-content-list"></ul></div></div>');
mw.util.addPortletLink(
'p-pc-content',
mw.util.getUrl( 'Wikipédia:Le Bistro/'+ today_full_date ),
'Bistro du jour',
'n-bdj',
'Accéder au bistro du jour'
);
mw.util.addPortletLink(
'p-pc-content',
mw.util.getUrl( 'Wikipédia:Bulletin_des_administrateurs/' + current_year + '/Semaine_'+ current_week ),
'Bulletin des admins',
'n-bda',
'Accéder au bulletin des administrateurs de la semaine'
);
mw.util.addPortletLink(
'p-pc-content',
mw.util.getUrl( 'Wikipédia:Pages_à_supprimer#'+ today_date ),
'Pages à supprimer',
'n-pas',
'Accéder aux demandes de pages à supprimer du jour'
);
} );
} );